Printing method for handling a print job

ABSTRACT

A method of managing a print job is disclosed, the method includes receiving a print job on an image forming apparatus; calculating an estimated processing time and an estimated delay to print time for each page of the print job; processing each page of the print job when the estimated processing time for a page of the print job and the estimated delay to print time for the page of the print job are equal; sending each of the processed pages of the print job to a print engine associated with the image forming apparatus for printing; and printing each of the pages of the print job on the image forming apparatus upon receipt by the print engine.

FIELD OF THE INVENTION

The present invention relates to a system and method of managing a printjob, and more particularly, a system and method of managing a print jobby delaying the start of the raster image processing (or “RIP” time) forone or more pages of a print job to reduce print memory usage andminimize print engine down time during printing of the print job.

BACKGROUND OF THE INVENTION

In today's print on demand, a print job can be generated, which maycontain several pages of text and images of various complexities. Thesecomplex jobs can heavily require and occupy long processing time (i.e.,raster image processing or “RIP” time) on the printing device. Insequences of print jobs, this can become a bottleneck for other jobswaiting to be processed or RIPped as the printing device has to completeripping of the current complex job before it can proceed to thesubsequent print job.

For example, a print job describes in a form of PDL (Page DescriptionLanguage) such as PostScript language file, which contains sets ofinstructions telling the printer how to lay pixel or dots onto a page tobe printed. The PDL file is processed by a RIP (Raster Image Processor)processor(s). RIP processed page is often called a rasterized page.Every rasterized page will be temporarily stored in print memory untilrelease to print engine. Accumulation of rasterized pages can easilyoccupy large amount of memory space while waiting to be printed. Thiscan occur on a print job which may contain many pages consisting ofmixed data of text, images, graphics and colors of various complexities.For example, it is common to produce rasterized page the size of 100 MBwhich could be a thousand times larger than in its PDL form. In U.S.Patent Publication No. 2007/0052998 A1, the application disclosescontrolling the output timing of the rasterized pages to minimize downtime of the print engine. While this approach can reduced print enginedown time, there can be many rasterized pages being held temporarilywhich can occupy large amounts of memory space in the printer for theduration of the delay of the page output timing to the print engine.

SUMMARY OF THE INVENTION

In consideration of the above issues, it would be desirable to improvethe management or processing of a print job by monitoring and/orcontrolling the processing (or RIP) status for the print job using aprint job management module and/or a printer controller to delay thestarting of the RIP process, memory consumption can be minimized sincethe processed page is immediately released to the print engine.

In accordance with an exemplary embodiment, a method of managing a printjob is disclosed, the method includes receiving a print job on an imageforming apparatus; calculating an estimated processing time and anestimated delay to print time for each page of the print job; processingeach page of the print job when the estimated processing time for a pageof the print job and the estimated delay to print time for the page ofthe print job are equal; sending each of the processed pages of theprint job to a print engine associated with the image forming apparatusfor printing; and printing each of the pages of the print job on theimage forming apparatus upon receipt by the print engine.

In accordance with a further exemplary embodiment, an image formingapparatus having executable instructions for managing a plurality ofprint jobs is disclosed, the instructions comprising: receiving a printjob on the image forming apparatus; calculating an estimated processingtime and an estimated delay to print time for each page of the printjob; processing each page of the print job when the estimated processingtime for a page of the print job and the estimated delay to print timefor the page of the print job are equal; sending each of the processedpages of the print job to a print engine associated with the imageforming apparatus for printing; and printing each of the pages of theprint job on the image forming apparatus upon receipt by the printengine.

In accordance with another exemplary embodiment, a computer programproduct comprising a non-transitory computer usable medium having acomputer readable code embodied therein for managing a plurality ofprint jobs on an image forming apparatus is disclosed, the computerreadable program code configured to execute a process, the processcomprising the steps of: receiving a print job on an image formingapparatus; calculating an estimated processing time and an estimateddelay to print time for each page of the print job; processing each pageof the print job when the estimated processing time for a page of theprint job and the estimated delay to print time for the page of theprint job are equal; sending each of the processed pages of the printjob to a print engine associated with the image forming apparatus forprinting; and printing each of the pages of the print job on the imageforming apparatus upon receipt by the print engine.

BRIEF DESCRIPTION OF THE DRAWINGS

The accompanying drawings are included to provide a furtherunderstanding of the invention, and are incorporated in and constitute apart of this specification. The drawings illustrate embodiments of theinvention, and together with the description, serve to explain theprinciples of the invention.

FIG. 1 is an illustration of a data processing system, which includes aclient device in the form of a computer device and an image formingapparatus or printer.

FIG. 2 is an illustration of the print job management module inaccordance with an exemplary embodiment.

FIG. 3 is an illustration of a flowchart describing the process of theJob Checking module in accordance with an exemplary embodiment.

FIG. 4 is an illustration of a flowchart describing the process in theRIP module in accordance with an exemplary embodiment.

FIG. 5 is an illustration of a describing the process in the PageControl module in accordance with an exemplary embodiment.

FIG. 6A is an illustration of data processing showing the analysis ofRIP Start Prediction timing on a given engine print interval inaccordance with an exemplary embodiment.

FIG. 6B is an illustration of data processing showing the memory mappingof print job in printer memory in accordance with an exemplaryembodiment.

FIGS. 7A and 7B are illustrations of data processing showing thebenefits of the new invention over related art in accordance with anexemplary embodiment.

DESCRIPTION OF THE PREFERRED EMBODIMENTS

Reference will now be made in detail to the present preferredembodiments of the invention, examples of which are illustrated in theaccompanying drawings. Wherever possible, the same reference numbers areused in the drawings and the description to refer to the same or likeparts.

In accordance with an exemplary embodiment, a method of managing a printjob to use memory efficiently for rasterized page data by delaying thestart of the RIP process of a page while minimizing the print enginedown time during printing of the entire print job is disclosed. Inaccordance with an exemplary embodiment, each and every page in a printjob can be analyzed to determine how much time it will take to processand ready to print. Based on the estimated RIP process time for eachpage and page output interval timing of print engine, start timing ofRIP process can be estimated. RIP process starts when the page estimatedRIP process is approaching the page output interval timing of the printengine. In accordance with an exemplary embodiment, by delaying thestart of RIP processing, memory consumptions can be minimized since theprocessed page is immediately release to print engine.

For example, in accordance with an exemplary embodiment, a print enginewith a throughput of 30 pages per minute (ppm), a rasterized page mustbe prepared approximately every 2 seconds to maintain the highestthroughput. For example, given a print job consisting of 4 pages, havingan estimated time for completing the RIP processing of the 4 pages printjob of 2, 1, 2, and 10 seconds, respectively. However, as described,page 4 of the print job requires longer RIP process time. In knownsystems, as preceding pages are rasterized and held temporarily tominimize print engine down time. However, to temporarily delay theprinting can be a costing accumulation of printer memory usage whilewaiting to be printed. In accordance with an exemplary embodiment of thepresent disclosure, even if page 4 is determined to take longer RIPprocess time, the start of RIP processing for each page is taken thebasis of estimating how much time requires for each page to delay untilapproaching the 2 seconds page output interval timing while it stillmaintain the print engine throughput.

FIG. 1 is an illustration of a typical data processing system 100, whichincludes a client device (or host computer) 110 and an image formingapparatus 120 (or printer) connected to the client device 110. Theclient device 110 preferably includes a processor or central processingunit (CPU), one or more memories for storing software programs and data(such as files to be printed). The client device 110 also includes anoperating system (OS), which manages the computer hardware and providescommon services for efficient execution of various software programs.The processor or CPU carries out the instructions of a computer program,which operates and/or controls at least a portion of the functionalityof the client device 110. It can be appreciated that examples of clientdevices 110 include and are not limited to personal computers, imageforming apparatuses, routers, and/or personal digital assistants (PDAs).

In accordance with an exemplary embodiment, the image forming apparatus120 is preferably in the form of an industrial image forming apparatusor multi-functional printer 120 connected to the client device 110. Theclient device 110 submits print jobs to the image forming apparatus(printer or printing device) 120 by transmitting data representing thedocuments to be printed and information describing the print job. Asshown in FIG. 1, the image forming apparatus (for example,printer/printing device) 120 typically includes a printer controller (orfirmware) 121, a memory section 122 preferably in the form of a harddisk drive (HDD), an image processing section (or data dispatcher) 123,a print engine 124, and an input/output (I/O) section 125.

The controller 121 typically includes a central processing unit (CPU), arandom access memory (RAM), and a read only memory (ROM). The centralprocessing unit is configured to execute a sequence of storedinstructions (i.e., a computer program). It can be appreciated that thecontroller 121 also includes an operating system (OS), which acts as anintermediary between the software programs and hardware componentswithin the image forming apparatus 120. The operating system (OS)manages the computer hardware and provides common services for efficientexecution of various application software. In accordance with anexemplary embodiment, the controller 121 processes the data and jobinformation received from the client device 110 to generate a printimage.

The image processing section 123 carries out image processing under thecontrol of the controller 121, and sends the processed print image datato the print engine 124. In one embodiment, the image processing section123 is preferably capable of processing multiple print jobs or sub-jobsin parallel and independently. For instance, the image processingsection 123 can include a CPU that contains multiple cores therein torealize the multiple RIP modules explained in detail later. The CPU usedconstituting a part of the controller can be commonly used for the imageprocessing section. The print engine 124 forms an image on a recordingsheet based on the image data sent from the image processing section.The I/O section 125 performs data transfer with the client device 110.The controller 121 is programmed to process data and control variousother components of the image forming apparatus or printer to carry outthe various methods described herein. The hard disk drive (HDD) orstorage device stores digital data and/or software programs for recallby the controller. In accordance with an exemplary embodiment, thedigital data includes resources, which can include graphics/images,logos, form overlays, fonts, etc.

The input/output (I/O) port 125 provides communications between theprinter section and the client device 110 and receives page descriptions(or print data) from the host for processing within the image formingapparatus 120. In accordance with an exemplary embodiment, the operationof printer section commences when it receives a page description fromthe client device 110 via I/O port in the form of a print job datastream. The page description may be any kind of page descriptionlanguages (PDLs), such as PostScript® (PS), Printer Control Language(PCL), Portable Document Format (PDF), XML Paper Specification (XPS),and so on. Examples of image forming apparatuses 120 consistent withexemplary embodiments of the invention include industrial printers,and/or multi-function printers or peripherals (MFP).

The client device 110 and the image forming apparatus (or printingdevice) 120 are preferably connected to one another via a network 130.Examples of the network 130 consistent with embodiments of the inventioninclude, but are not limited to, the Internet, an intranet, a local areanetwork (LAN) and a wide area network (WAN). The client device 110 andthe image forming apparatus 120 can also be connected with a wire and/orwireless technology by using radio frequency (RF) and/or infrared (IR)transmission.

FIG. 2 is an illustration of the print job management module 200 inaccordance with an exemplary embodiment. In accordance with an exemplaryembodiment, the print job management module 200 is part of the firmwareof the image forming apparatus or printing device 120 and includes aprint job I/F (interface) a job checking module 202, a print jobmanagement table 203, a print queue for incoming jobs 204, a processingmodule (or RIP module) 205, a print queue for rasterized data 206, amaking print job module 207, a page control module 209, and a video I/F(interface) module 210.

As shown in FIG. 2, as an incoming print job is received, the jobchecking module 202 manages the print job, checks and monitors pages ofthe print job. In accordance with an exemplary embodiment, the jobchecking module 202 analyzes the PDL source data and provides a bestestimated time it may take to complete the RIP process of the print job.Once the RIP Completion Prediction time has been determined, the RIPStart Prediction time is calculated. The RIP Start Prediction time iscalculated based on the (estimated Total Print job completion−Page n(starting from end page)*(Print interval timing)−RIP CompletionPrediction time. Simultaneously, a checking mechanism called PageControl module 209, which particularly tracks the print job and controlsthe start timing of the RIP process for every page. If the RIP StartPrediction time of a page is equal to 0, the page is immediately sent tothe RIP module 205 for RIP processing. After the page is rasterized, thepage is immediately sent to the Print Queue for Rasterized page moduleand the page is ready to print. In accordance with an exemplaryembodiment, if the RIP Start Prediction time is not equal to 0, theprint job is temporarily put on hold and a counter up timer is run untilit reached the same time value as the RIP Start Prediction time. Oncethe timer reached the Print Queue for Rasterized page module StartPrediction time, job will be released to the RIP module 205. Then, theprocessed job is sent to the Print Job Making module and is ready toprint. In accordance with an exemplary embodiment, the RIP module 205can consist of multiple processors and can process multiple pagessimultaneously, and consequently processing time can be sped up.

In accordance with an exemplary embodiment, for example, a Print Job isconsisting of multiple pages—Page 1, Page 2, Page 3, and Page 4 andhaving a RIP Completion Prediction time as 2, 1, 2, 10 seconds,respectively. For a print engine with throughput of approximately 30pages per minute (ppm), the print image must be ready to print in 2seconds intervals in order to maintain the print engine highestthroughput. In accordance with an exemplary embodiment, the Print JobChecking module 202 analyzes all the pages data in the print job andpredicts the RIP Completion Prediction time. In accordance with anexemplary embodiment, since page 4 is determined to have a longerprocessing time, rather than begin the RIP process immediately, the PageControl module 202 can decides to hold the preceding pages for RIPprocessing. Thus, in accordance with an exemplary embodiment, the startof processing for each of the preceding pages only begins when estimatedRIP Completion Prediction time is approaching the 2 seconds printinterval timing. For example, in this case, the RIP processing starts asfollows—Page 1 in 2 sec, Page 2 in 5 sec, and Page 3 in 6 secrespectively. As each page is processed, the page is immediatelyreleased and is ready for printing. Since jobs are processed andreleased immediately, the print job no longer occupies a large amount ofmemory buffer (see FIG. 6B)

FIG. 3 is an illustration of a flowchart 300 describing the process ofthe Job Checking module 202 in accordance with an exemplary embodiment.As shown in FIG. 3, the process begins in step 301, wherein the JobChecking module 202 is activated. In step 302, the Job Checking module202 checks to determine if any print jobs are in the “print job I/F”(i.e., “print job interface”). If the print job I/F does not contain anyprint jobs, the process stops and the process is repeated until a printjob is received. In step 303, once the print job I/F includes at leastone print job, the Job Checking module 202 analyzes each of the pageswithin the print job. In step 304, if the print job does not includemore than one page in the print job, the print job is sent forprocessing. If the print job includes more than one page (or “yes”), instep 305, the page order of the print job is checked. In step 306, theJob Checking module 202 writes the “page order in print job” number andsends the page order for processing to the “print job management table”203. In step 307, a “RIP completion prediction time” based on the printjobs PDL (page description language) is calculated. In step 308, “RIPcompletion Prediction Time” is written to the “Print Job ManagementTable” 204. In step 309, the “RIP Start Prediction time” is calculated.In step 310, the “RIP Start Prediction time” is written to the “Printjob management table” 203. In step 311, the print job is sent to the“Print Queue for Incoming Job”.

FIG. 4 is an illustration of a flowchart, which described the process400 in the RIP module 205 in accordance with an exemplary embodiment. Asshown in FIG. 4, in step 401, the RIP module 205 is activated. In step402, the RIP module 206 determines if there is any print jobs in the“Print Job I/F” 201. If not print jobs are in the “Print Job I/F”, theprocess returns to step 402 and the process is repeated. If a print jobis in the “Print Job I/F”, in step 403, processing RIP certain lines isperformed. In step 4045, the RIP module determines if the RIP processingis finished. If the RIP processing is not finished, the process returnsto step 403. Alternatively, if the RIP processing is finished, in step405, print information is sent to “Print Queue for Rasterized Page” 206.

FIG. 5 is an illustration of a flowchart, which describes the process500 in the Page Control module 209. In step 501, the process of the PageControl module 209 is activated. In step 502, the Page Control module207 determines if there is any print page in “Print Queue for IncomingJob”. If not, the process returns to step 502. If the answer is yes(e.g., updating information is available), in step 503, the “RIP StartPrediction time” in the Print Job Management table 203 is checked. Instep 504, if the RIP Start Prediction time is equal to zero, the processcontinues to step 505, wherein Page Control Module updates the “RIPStart Status” to “Ready” in the Print Job Management Table 203. If theRIP Start Prediction time is greater than zero, the process continues tostep 506, wherein the Page Control module update the “RIP Start Status”to “Not Ready” in the Print Job Management Table 203. In step 507, thePage Control module checks to determine if the “RIP Start PredictionTime” equal to zero, if not, the process returns to step 507 where theprocess is repeated until the “RIP Start Prediction Time” is equal tozero. In step 507, once the “RIP Start Prediction Time” is equal tozero, the process continues to step 505, where the Page Control Moduleupdates the “RIP Start Status” to “Ready” in the Print Job ManagementTable 203.

FIG. 6A is an illustration of data processing 610 showing the analysisof RIP Start Prediction timing on a given engine print interval. FIG. 6Bis an illustration of data processing 620 showing the memory mapping ofprint job in printer memory. In accordance with an exemplary embodimentof the disclosure, the incoming pages are temporarily stored in theReceiving Page buffer, analyzed, and delayed the start of RIP process toreduce large memory consumption. As rasterized page becomes ready, isimmediately sent to the print engine and the consumed memory is freedup. In known systems 630, incoming pages are immediately process andstored in the Processed Page buffer. However, known methods can delaythe start of output timing in order to minimize print engine down time.However, processed pages or raster data occupies much larger memoryspace as it continues to accumulate.

FIGS. 7A and 7B are illustrations of data processing showing thebenefits of the new invention over related art. For example, in a knownmethod 710, a received page is immediately process and release forprinting upon RIP completion. As shown in FIG. 7A, this method may causeengine down time if a subsequent page requires much longer time toprocess. In another known method 720, a received page is immediatelyprocess but the output timing for processed page is delayed in order tominimize engine down time. However, this method occupies much largermemory for held processed pages.

In accordance with an exemplary embodiment of the present disclosure730, each received page is analyzed and the start of RIP processing isdelayed until the processing time approaches or is equal to the printinterval, which minimize memory usage and maintain a high print enginethroughput. In accordance with an exemplary embodiment, a process pageis immediately released for printing upon completion of the processing.

In accordance with another exemplary embodiment, a computer programproduct comprising a non-transitory computer usable medium having acomputer readable code embodied therein for managing a plurality ofprint jobs on an image forming apparatus is disclosed, the computerreadable program code configured to execute a process, the processcomprising the steps of: receiving a print job on an image formingapparatus; calculating an estimated processing time and an estimateddelay to print time for each page of the print job; processing each pageof the print job when the estimated processing time for a page of theprint job and the estimated delay to print time for the page of theprint job are equal; sending each of the processed pages of the printjob to a print engine associated with the image forming apparatus forprinting; and printing each of the pages of the print job on the imageforming apparatus upon receipt by the print engine.

The computer usable medium, of course, may be a magnetic recordingmedium, a magneto-optic recording medium, or any other recording mediumwhich will be developed in future, all of which can be consideredapplicable to the present invention in all the same way. Duplicates ofsuch medium including primary and secondary duplicate products andothers are considered equivalent to the above medium without doubt.Furthermore, even if an embodiment of the present invention is acombination of software and hardware, it does not deviate from theconcept of the invention at all. The present invention may beimplemented such that its software part has been written onto arecording medium in advance and will be read as required in operation.

It will be apparent to those skilled in the art that variousmodifications and variation can be made to the structure of the presentinvention without departing from the scope or spirit of the invention.For instance, the above mentioned embodiment is discussed in thecondition where the multiple sub-print jobs are preliminary prepared inthe client device 110, and they are sent to image forming apparatus 120.However, the present invention is not limited to this specificimplementation; the present invention is applicable to the case where asingle print job is forwarded from the client device 110 to the imageforming apparatus 120, and then the image forming apparatus 120separates or divides the single print job into multiple sub-print jobsbefore processing these sub-print jobs. In this alternativeimplementation, the image forming apparatus 120 can have the control ofsuch separation of the single print job, and therefore, it is beneficialfor the image forming apparatus 120 to decide how many sub-print jobsshould be made in accordance with the resource conditions of the imageforming apparatus 120. In view of the foregoing, it is intended that thepresent invention cover modifications and variations of this inventionprovided they fall within the scope of the following claims and theirequivalents.

While the present invention may be embodied in many different forms, anumber of illustrative embodiments are described herein with theunderstanding that the present disclosure is to be considered asproviding examples of the principles of the invention and such examplesare not intended to limit the invention to preferred embodimentsdescribed herein and/or illustrated herein. The present inventionincludes any and all embodiments having equivalent elements,modifications, omissions, combinations (e.g. of aspects across variousembodiments), adaptations and/or alterations as would be appreciated bythose in the art based on the present disclosure. The limitations in theclaims are to be interpreted broadly based on the language employed inthe claims and not limited to examples described in the presentspecification or during the prosecution of the application, whichexamples are to be construed as non-exclusive. For example, in thepresent disclosure, the term “preferably” is non-exclusive and means“preferably, but not limited to”.

In this disclosure and during the prosecution of this application,means-plus-function or step-plus-function limitations will only beemployed where for a specific claim limitation all of the followingconditions are present In that limitation: a) “means for” or “step for”is expressly recited; b) a corresponding function is expressly recited;and c) structure, material or acts that support that structure are notrecited. In this disclosure and during the prosecution of thisapplication, the terminology “present invention” or “invention” may beused as a reference to one or more aspect within the present disclosure.In this disclosure and during the prosecution of this application, theterminology “embodiment” can be used to describe any aspect, feature,process or step, any combination thereof, and/or any portion thereof,etc. In some examples, various embodiments may include overlappingfeatures.

What is claimed is:
 1. A method of managing a print job, the methodcomprising: receiving a print job on an image forming apparatus;calculating an estimated processing time and an estimated delay to printtime for each page of the print job; processing each page of the printjob when the estimated processing time for a page of the print job andthe estimated delay to print time for the page of the print job areequal; sending each of the processed pages of the print job to a printengine associated with the image forming apparatus for printing; andprinting each of the pages of the print job on the image formingapparatus upon receipt by the print engine.
 2. The method of claim 1,comprising: assigning each of the pages of the print job to a print jobmanagement module to determine the estimated processing time and theestimated delay to print time for each of the pages of the print job. 3.The method of claim 2, comprising: providing a print engine intervaltime for the print engine; analyzing the print job to determine theestimated processing time to complete the processing of each page of theprint job; and calculating a processing start time based on an estimatedtotal print completion time for a total number of pages of the printjob, the print engine interval time for the print engine and theestimated processing time for each page of the print job.
 4. The methodof claim 1, comprising determining a number of pages in the print job,and if the number of pages in the print job is equal to one, immediatelybegin processing the print job for printing.
 5. The method of claim 4,comprising if the number of pages in the print job is two or more,dividing the print job into a plurality of pages for processing.
 6. Themethod of claim 5, comprising: processing the plurality of pages of theprint job with two or more processors.
 7. The method of claim 1, whereina processed page is immediately released to the print engine forprinting.
 8. The method of claim 1, wherein the processing of each ofthe pages of the print jobs comprises: rasterizing print data for eachof the pages of the print job.
 9. An image forming apparatus havingexecutable instructions for managing a plurality of print jobs, theinstructions comprising: receiving a print job on the image formingapparatus; calculating an estimated processing time and an estimateddelay to print time for each page of the print job; processing each pageof the print job when the estimated processing time for a page of theprint job and the estimated delay to print time for the page of theprint job are equal; sending each of the processed pages of the printjob to a print engine associated with the image forming apparatus forprinting; and printing each of the pages of the print job on the imageforming apparatus upon receipt by the print engine.
 10. The apparatus ofclaim 9, comprising: a print job management module, which receives eachof the pages of the print job and determines the estimated processingtime and the estimated delay to print time for each of the pages of theprint job.
 11. The apparatus of claim 10, wherein the print jobmanagement module performs the following steps: determines a printengine interval time for the print engine; analyzes the print job todetermine the estimated processing time to complete the processing ofeach page of the print job; and calculates a processing start time basedon an estimated total print completion time for a total number of pagesof the print job, the print engine interval time for the print engineand the estimated processing time for each page of the print job. 12.The apparatus of claim 9, comprising: a job checking module, whichdetermines a number of pages in the print job, and if the number ofpages in the print job is equal to one, immediately sends the print jobfor processing by a processor.
 13. The apparatus of claim 12, wherein ifthe number of pages in the print job is two or more, the job checkingmodule performs the following steps: divides the print job into aplurality of pages for processing; and sends the plurality of pages tothe print job management module for determination of the estimatedprocessing time and the estimated delay to print time for each of thepages of the print job.
 14. The apparatus of claim 9, comprising: two ormore processors for processing the print job.
 15. The apparatus of claim9, wherein a processed page is immediately released to the print enginefor printing.
 16. The apparatus of claim 9, wherein the processing ofeach of the pages of the print jobs comprises: rasterizing print datafor each of the pages of the print job.
 17. A computer program productcomprising a non-transitory computer usable medium having a computerreadable code embodied therein for managing a plurality of print jobs onan image forming apparatus, the computer readable program codeconfigured to execute a process, the process comprising the steps of:receiving a print job on an image forming apparatus; calculating anestimated processing time and an estimated delay to print time for eachpage of the print job; processing each page of the print job when theestimated processing time for a page of the print job and the estimateddelay to print time for the page of the print job are equal; sendingeach of the processed pages of the print job to a print engineassociated with the image forming apparatus for printing; and printingeach of the pages of the print job on the image forming apparatus uponreceipt by the print engine.
 18. The computer program of claim 17,comprising: assigning each of the pages of print job to a print jobmanagement module to determine the estimated processing time and theestimated delay to print time for each of the pages of the print job.19. The computer program of claim 18, comprising: providing a printengine interval time for the print engine; analyzing the print job todetermine the estimated processing time to complete the processing ofeach page of the print job; and calculating a processing start timebased on an estimated total print completion time for a total number ofpages of the print job, the print engine interval time for the printengine and the estimated processing time for each page of the print job.20. The computer program of claim 17, comprising: determining a numberof pages in the print job, and if the number of pages in the print jobis equal to one, immediately begin processing the print job forprinting.
 21. The computer program of claim 17, wherein a processed pageis immediately released to the print engine for printing